package com.example.demo.internettongxin.udptongxin2;

/**
 * @Description Client
 * @Author songchuanlong
 * @Date 2025-05-29
 */

import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;
import java.util.Scanner;

/**
 * 多发多收
 */
public class Client {
    public static void main(String[] args) throws Exception {
        //1、创建客户端对象(发韭菜出去的人)
        DatagramSocket socket = new DatagramSocket();
        //2、创建数据包对象封装要发出去的数据（创建一个韭菜盘子）
        /*public DatagramPacket(byte buf[],int length,
InetAddress address, int port)
参数一：封装要发出去的数据。
参数二：发送出去的数据大小（字节个数）
参数三：服务端的IP地址（找到服务端主机）
参数四：服务端程序的端口。*/
        Scanner sc = new Scanner(System.in);
        while (true) {
            System.out.println("请说：");
            String msg = sc.nextLine();
            //可以自己设置推出程序代码
            if("exit".equals(msg)){
                System.out.println("下次再聊");
                socket.close();//释放资源
                break;//跳出死循环
            }
            byte[] bytes = msg.getBytes();
            DatagramPacket packet = new DatagramPacket(bytes, bytes.length, InetAddress.getLocalHost(), 6666);
//        DatagramPacket packet1 = new DatagramPacket(bytes, bytes.length, InetAddress.getByName("www.baidu.com"), 6666);
            //3、开始正式发送数据包里面的数据
            socket.send(packet);
        }
    }
}
